Site cover image

Site icon imageSen(Qian)’s Memo

This website is Donglin Qian (Torin Sen)’s memo, especially about machine learning papers and competitive programming.

2023-ICML-A Universal Unbiased Method for Classification from Aggregate Observations

https://arxiv.org/abs/2306.11343

Introduction

完全なラベルで学習することがDNNの性能を引き上げる重要な要素だが、プライバシーや機密性、アノテーションコストの高さから個々のインスタンスについてのラベルを詳細には与えることはできず、ある程度のインスタンスグループに対してのラベルのみ与えられる場合がある

ユーザ情報のプライバシーのため、グループで○○という統計量だったと開示するなど。あとは薬物活性予測でもグループごとにラベルがついたりする。

集合観測=Aggregate Observationによる分類タスク、CFAO(Classification from Aggregate Observation)は必要である。

よくあるのが、Multi-instance Learning。グループ内で○○のラベルを持つデータは少なくとも1つはある、というように。

また、ラベルの割合から学習するLearning from Label Proportionもある。

2つのペアの類似度で学習するClassification from Pairwise Similaritiesもある。

先行研究におけるCFAOは、普遍的な手法は最大尤度推定に基づいていた。だが、それではグループ内ですべてのサンプルで○○の性質を持っていると推定するものであり、リスク一貫性が保証されない(学習を進めても真のLabelで学習したものと同じ収束先にはいかない)。そして対数尤度を使うので、損失関数が限られている。

この論文では、不偏推定量を提案した。

事前知識

CFAO

グループについての統計量からの分類学習を考える。これは以下のように定義される。

  • x1:m={x1,,xm}\mathbf{x}_{1:m} = \{ \mathbf{x}_1, \cdots, \mathbf{x}_m \} このように各グループが与えられる。
    • 与えられはしないが、真のラベルはy1:m={y1,,ym}y_{1:m} = \{ y_1, \cdots, y_m \}である。
    • 与えられるのは、表現空間ZZにあるAggregate LabelのzZz \in Zである。
    • Aggregation Labelはある関数g:YmZg : Y^m \to Zで写像される。
  • 目標は、(x1:m,z)(\mathbf{x}_{1:m}, z)を与えられて、正しく各サンプルについて、yyを予測すること。

具体例としては、

  • m=2m=2の場合は、2つのデータが同じか違うか。
  • m=3m=3の場合は、大小関係がd(y1,y2)<d(y1,y3)d(y_1,y_2) < d(y_1, y_3)かどうか。
  • m2m \geq 2の場合、1つでもPositiveはあるか。
  • m2m \geq 2の場合、ラベルの比率がどうなっているか。
  • m=2m = 2の場合、2つのデータの順位付けy1>y2y_1 > y_2かどうか。

そのうえで、グループの中に属しているデータは独立であるという仮定を持つ。

p(y1:mx1:m)=i=1mp(yixi)p(y_{1:m} | \mathbf{x}_{1:m}) = \prod_{i=1}^m p(y_i|\mathbf{x}_i)

これを踏まえると以下のように、p(x1:m,y1:m,z)p(\mathbf{x}_{1:m}, y_{1:m}, z)は以下のように計算できる。

Image in a image block

提案手法

不変リスク推定量

不変リスク推定量は以下のようになる。

Image in a image block
Image in a image block

ここでは、

  1. 各サンプルxi\mathbf{x}_iに対して、考える。真のラベルがyi=jy_i=jだとしたときの損失と、それがyi=jy_i = jとなり、Aggregation Labelもzzになる条件付確率を乗じる。
  2. これを各ラベル、各サンプルについて合算する。
  3. 全部でmmサンプルあるので、1/m1/mで平均をとる。そして確率は、ラベル条件をなくしたp(zx1:m)p(z|\mathbf{x}_{1:m})で正則化する。

つまり、なる確率が低いラベルに対しては重みを減らしていくことで、すべてのラベルだった場合の損失を計算している。

これを経験的に最小化すると、以下のようにできる。

Image in a image block

現実的には、どのようにp(zx1:m)p(z|\mathbf{x}_{1:m})p(z,yix1:m)p(z, y_i | \mathbf{x}_{1:m})を推定するのが問題となる。もちろん集約関数g:YmZg : Y^m \to Zによってもそれぞれが違う推定方法をとるだろう。

EMの視点からの分析

p(z,yix1:m)/p(zx1:m)=ωy1:mp(z, y_i | \mathbf{x}_{1:m}) / p(z|\mathbf{x}_{1:m}) = \omega_{y_{1:m}}を推定したい。

これについて対数尤度logp(zx1:m)\log p(z|\mathbf{x}_{1:m})を最大化する学習を考える。それをするには隠れ変数のyiy_iがカギを握る。なので、これはEMアルゴリズムを考えられる。

📄Arrow icon of a page linkEM Algorithmの解説 のなかのq(Z)q(Z)はここではωy1:m\omega_{y_{1:m}}にあたる。

log(p(zx1:m))yiωy1:mlog(p(yi,x1:m)/ωy1:m)\log (p(z|\mathbf{x}_{1:m})) \geq \sum _{y_i} \omega_{y_{1:m}} \log (p(y_i , \mathbf{x}_{1:m}) / \omega_{y_{1:m}})

Eステップではq(Z)=p(ZX)q(Z) = p(Z|X)と今時点での推定を代入することにあたる。ここでは、p(yix1:m)p(y_i|\mathbf{x}_{1:m})のパラメタを固定して、p(z,yix1:m)/p(zx1:m)=ωy1:mp(z, y_i | \mathbf{x}_{1:m}) / p(z|\mathbf{x}_{1:m}) = \omega_{y_{1:m}}を計算する。

Mステップでは、EZX,θold[logp(X,Zθ)] \mathbb{E} _{Z|X, \theta _{old}}[\log p(X, Z|θ)]を最大化する。これは今の推定したωy1:m\omega_{y_{1:m}}に基づいて、logp(X,Zθ)\log p(X, Z | \theta)においての期待値に相当するyiωy1:mlog(p(yi,x1:m)/ωy1:m)\sum _{y_i} \omega_{y_{1:m}} \log (p(y_i , \mathbf{x}_{1:m}) / \omega_{y_{1:m}})を最大化することにあたる。

ここで、右辺はzzという与えられている変数ともjoint distributionであるωy1:mlogp(yi,x1:m,z)\omega_{y_{1:m}} \log p(y_i ,\mathbf{x}_{1:m}, z)でないといけないが、今回zzの影響はhidden labelのyiy_iのイテレーションにのみ影響し、p(yi,x1:m,z)=p(yi,x1:m)p(y_i, \mathbf{x}_{1:m}, z) = p(y_i, \mathbf{x}_{1:m})が成り立つから外している(Ground Truthのラベルからzzを計算するし)

提案手法の実現

この論文が考えているCFAOは以下のを考える。

  • ペアごとの類似性による分
  • 3つ組の比較による分類
  • 複数インスタンス学習(1つのデータは最低でもXXである)
  • ラベルの比率からの学習

類似性や3つ組での学習をすると、最悪識別不能になることがある。情報が少なさすぎて学習が難しいから。なので、近いデータについては近い予測になるというconsistencyはないが、Risk Consistencyだけは保証できる

そして、識別可能なマッピングも重要である。例えば、学習した3つのクラスがクラス1: 犬、クラス2: 猫、クラス3: 鳥だが、常にこの通りに出力されず、クラス1: 鳥、クラス2: 猫、クラス3: 犬となる可能性もあるということ。

これを解決するために、ハンガリーアルゴリズムという線形割り当て問題を解くためのアルゴリズムで、クラスをマッチさせる。

各CFAOの方法ごとに識別可能性の問題ごとに、推定方法を考える。

ペアごとの類似度

2つのデータxi,xj\mathbf{x}_i, \mathbf{x}_jが同じクラスに属するか、違うクラスに属するか

この場合は、ηi(xi)\eta_i(\mathbf{x}_i)とは、サンプルに対して識別器の出力したクラスiiである確率

Image in a image block

以上のように計算できる。

3つ組の比較

Ground Truthのラベルy1,y2,y3y_1, y_2, y_3に対して、d(y1,y2)<d(y1,y3)d(y_1, y_2) < d(y_1, y_3)かどうか

ここでは、距離をd(y,y)=1[yy]d(y, y^\prime) = \mathbf{1}[y \neq y^\prime]と置いた時の例を示している。

これは以下のようになる。

Image in a image block
Image in a image block

ラベルの割合から学習

与えられるのはyiy_iではなく、各ラベルのデータの個数のベクトルz\mathbf{z}である。

p(zx1:m)p(z|\mathbf{x}_{1:m})では、ありうるすべての組み合わせについての走査をしている。

そして具体的なp(z=g(y1:m),yi=jx1:m)p(z=g(y_{1:m}), y_i = j | \mathbf{x}_{1:m}) の計算では、ii番目だけラベルが決まっているということなので、最後にηj(xi)\eta_j(\mathbf{x}_i)をかけている。

Image in a image block

Multi-instance Learning

一連のラベルyiy_iの中に、1つでもPositiveがあるかどうか

二値分類なので、Pの確率をη1\eta_1、Nの確率をη0=1η1\eta_0 = 1 - \eta_1とする。

Image in a image block

Experiments

  • MNIST、Kuzushiji-MNIST、FMNIST、SVHN、CIFAR-10についてそれぞれこれの問題設定で実験した。
  • ネットワークはLeNet, DenseNet, MLPなどを使った。
  • 損失はCross Entropy。
  • 5回ずつ実験した。

結果は少しだけ改善されてた感がある。